package com.xayy.health.mgt.service;

import cn.kawins.base.result.CheckResult;
import cn.kawins.mybatis.BaseService;
import com.xayy.health.mgt.model.BatchUploadData;
import com.xayy.health.mgt.model.dto.DataFeatureDto;

import java.util.List;

/**
 * @author zhangxa
 */
public interface BatchUploadDataService extends BaseService<BatchUploadData> {
    /**
     * 获取上传记录信息
     *
     * @param satelliteName 卫星名称
     * @return CheckResult<Object>
     */
    CheckResult<Object> getUploadList(String satelliteName);

    /**
     * 根据卫星名称文件标识查询图例参数
     * @param fileLogo 文件标识
     * @param satelliteName 卫星名称
     * @return CheckResult<Object>
     */
    CheckResult<Object> getLegendNameList(Long fileLogo, String satelliteName);

    /**
     * 上传excel
     * @param  batchUploadDataList 批量上传数据
     */
    void save(List<BatchUploadData> batchUploadDataList);

    /**
     * 批量特征分析图表
     * @param dataFeatureDto 特征分析实体
     * @return CheckResult<Object>
     */
    CheckResult<Object> getBatchFeatureEcharts(DataFeatureDto dataFeatureDto);

    /**
     * 根据图例名称查询参数代号
     * @param fileLogo 文件标识
     * @param satelliteName 卫星名称
     * @param legendName 图例名称
     * @return CheckResult<Object>
     */
    CheckResult<Object> getParamCodesListByLegendName(Long fileLogo, String satelliteName, String legendName);

    /**
     * 删除上传记录
     * @param fileLogo 文件标识
     * @return CheckResult<Object>
     */
    CheckResult<Object> deleteBatchDataByFileLogo(Long fileLogo);
}
